Skip to content

Check for LLVM and Rust objcopy binaries before throwing#312

Merged
arihant2math merged 1 commit into
hexagonal-sun:masterfrom
sixseventysix:expand-objcopy-tools
Jun 11, 2026
Merged

Check for LLVM and Rust objcopy binaries before throwing#312
arihant2math merged 1 commit into
hexagonal-sun:masterfrom
sixseventysix:expand-objcopy-tools

Conversation

@sixseventysix

Copy link
Copy Markdown
Contributor

The qemu_runner.py file hardcoded aarch64-none-elf-objcopy for the objcopy binary, which is distributed as part of the Arm GNU toolchain, and isn't available by default on macOS. LLVM ships with its own objcopy binary that has support for multiple targets and is described as a "drop-in replacement for GNU's objcopy" (see: https://llvm.org/docs/CommandGuide/llvm-objcopy.html).
The qemu_runner.py now checks if the system has llvm-objcopy and rust-objcopy (cargo wrapper over llvm-objcopy) and invokes whichever one it finds. If it doesn't find any, it throws an error instructing the programmer to install any of the above objcopy binaries.

@arihant2math arihant2math left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@arihant2math arihant2math merged commit 413321c into hexagonal-sun:master Jun 11, 2026
2 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants